package com.chixing.entity.VO;

import java.math.BigDecimal;
import java.util.List;

public class HotelSearchVO {
    private List<Long> hotelIds; // 可以为空
    private String location;     // 地点或酒店名称
    private String checkInDate;  // 入住日期 YYYY-MM-DD
    private String checkOutDate; // 退房日期 YYYY-MM-DD
    private Integer roomCount;   // 房间数
    private BigDecimal minPrice; // 最低价
    private BigDecimal maxPrice; // 最高价
    private Integer star;        // 星级
    private String type;         // 酒店类型
    private String roomType;     // 房型


    public HotelSearchVO() {
    }

    public HotelSearchVO(List<Long> hotelIds, String location, String checkInDate, String checkOutDate, Integer roomCount, BigDecimal minPrice, BigDecimal maxPrice, Integer star, String type, String roomType) {
        this.hotelIds = hotelIds;
        this.location = location;
        this.checkInDate = checkInDate;
        this.checkOutDate = checkOutDate;
        this.roomCount = roomCount;
        this.minPrice = minPrice;
        this.maxPrice = maxPrice;
        this.star = star;
        this.type = type;
        this.roomType = roomType;
    }

    // getters & setters
    public String getLocation() { return location; }
    public void setLocation(String location) { this.location = location; }
    public String getCheckInDate() { return checkInDate; }
    public void setCheckInDate(String checkInDate) { this.checkInDate = checkInDate; }
    public String getCheckOutDate() { return checkOutDate; }
    public void setCheckOutDate(String checkOutDate) { this.checkOutDate = checkOutDate; }
    public Integer getRoomCount() { return roomCount; }
    public void setRoomCount(Integer roomCount) { this.roomCount = roomCount; }
    public BigDecimal getMinPrice() { return minPrice; }
    public void setMinPrice(BigDecimal minPrice) { this.minPrice = minPrice; }
    public BigDecimal getMaxPrice() { return maxPrice; }
    public void setMaxPrice(BigDecimal maxPrice) { this.maxPrice = maxPrice; }
    public Integer getStar() { return star; }
    public void setStar(Integer star) { this.star = star; }
    public String getType() { return type; }
    public void setType(String type) { this.type = type; }
    public String getRoomType() { return roomType; }
    public void setRoomType(String roomType) { this.roomType = roomType; }

    public List<Long> getHotelIds() {
        return hotelIds;
    }

    public void setHotelIds(List<Long> hotelIds) {
        this.hotelIds = hotelIds;
    }

    @Override
    public String toString() {
        return "HotelSearchVO{" +
                "hotelIds=" + hotelIds +
                ", location='" + location + '\'' +
                ", checkInDate='" + checkInDate + '\'' +
                ", checkOutDate='" + checkOutDate + '\'' +
                ", roomCount=" + roomCount +
                ", minPrice=" + minPrice +
                ", maxPrice=" + maxPrice +
                ", star=" + star +
                ", type='" + type + '\'' +
                ", roomType='" + roomType + '\'' +
                '}';
    }
}
